/*
 * #%L
 * SwiftUIDataAccessLayer
 * $Id:$
 * $HeadURL:$
 * %%
 * Copyright (C) 2011 - 2012 Linkwithweb
 * %%
 * This program is free software: you can redistribute it and/or modify
 * it under the terms of the GNU General Public License as
 * published by the Free Software Foundation, either version 3 of the 
 * License, or (at your option) any later version.
 * 
 * This program is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 * GNU General Public License for more details.
 * 
 * You should have received a copy of the GNU General Public 
 * License along with this program.  If not, see
 * <http://www.gnu.org/licenses/gpl-3.0.html>.
 * #L%
 */
/**
 * 
 */
package com.linkwithweb.products.swiftui.rowmapper;

import java.sql.ResultSet;
import java.sql.SQLException;

import com.linkwithweb.products.swiftui.dataobject.FrameworkSystemColumn;

/**
DROP TABLE IF EXISTS `automata`.`FRM_SYSTEM_COLUMNS`;
CREATE TABLE  `automata`.`FRM_SYSTEM_COLUMNS` (
  `COLUMN_KEY` int(10) unsigned NOT NULL AUTO_INCREMENT,
  `COLUMN_ID` varchar(45) DEFAULT NULL,
  `COLUMN_NAME` varchar(45) DEFAULT NULL,
  `DEFAULT_COLUMN_VALUE` varchar(45) DEFAULT NULL,
  `APPLIED_TABLES` varchar(45) DEFAULT NULL,
  `IS_ACTIVE` tinyint(1) NOT NULL,
  `IDENTIFIER` varchar(45) DEFAULT NULL,
  `IDENTIFIER_ROLE` varchar(45) DEFAULT NULL,
  `CREATED_BY` int(10) unsigned NOT NULL,
  `CREATED_DATE` datetime NOT NULL,
  `MODIFIED_BY` int(10) unsigned NOT NULL,
  `MODIFIED_DATE` datetime NOT NULL,
  PRIMARY KEY (`COLUMN_KEY`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
 * 
 * @author ashwin kumar
 *
 */
public class SystemColumnRowMapper extends AbstractRowMapper {

	/* (non-Javadoc)
	 * @see org.springframework.jdbc.core.RowMapper#mapRow(java.sql.ResultSet, int)
	 */
	public Object mapRow(ResultSet rs, int rowNum) throws SQLException {
		FrameworkSystemColumn column = new FrameworkSystemColumn();
		
		column.setColumnKey(rs.getLong("COLUMN_KEY"));
		column.setColumnID(rs.getString("COLUMN_ID"));
		column.setColumnName(rs.getString("COLUMN_NAME"));
		column.setColumnValue(rs.getString("DEFAULT_COLUMN_VALUE"));
		column.setTableMatchingString(rs.getString("APPLIED_TABLES"));
		
		return mapDefaultColumns(column,rs);
	}

}
